package com.itstyle.seckill.util.statusflow;

import org.springframework.stereotype.Service;

import java.lang.annotation.*;

/**
 * 订单状态机注解，标识指定服务类属于哪种订单的状态机
 *
 * @author chenglong
 * @see cn.gogpay.dcb.mall.order.web.flow.OrderStatusFlowService
 */
@Service
@Documented
@Retention(RetentionPolicy.RUNTIME)
@Target(ElementType.TYPE)
public @interface MallOrderMachine {
    /**
     * 指定订单类型，该服务类将成为指定订单类型的状态机
     *
     * @return
     */
    OrderClassificationEnum value();
}
